package internal

import (
	"baseService/internal/infrastructure/config"
	pkgcache "baseService/internal/pkg/cache"
	pkgeventbus "baseService/internal/pkg/eventbus"
	pkglogger "baseService/internal/pkg/logger"

	"gorm.io/gorm"
)

// ApplicationInterface 定义应用程序接口，供路由和其他组件使用
type ApplicationInterface interface {
	GetDB() *gorm.DB
	GetCache() pkgcache.Cache // 简化：直接返回缓存接口
	GetEventBusManager() *pkgeventbus.EventBus
	GetConfig() *config.Config
	GetLogger() pkglogger.Logger
	GetConnectionStats() (map[string]interface{}, error)
}
